package com.wems.dev_ops_manage.service.impl;

import java.util.List;
import com.wems.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.wems.dev_ops_manage.mapper.FaultRecordMapper;
import com.wems.dev_ops_manage.domain.FaultRecord;
import com.wems.dev_ops_manage.service.IFaultRecordService;
import com.wems.dev_ops_manage.domain.vo.FaultRecordVo;

/**
 * 故障记录Service业务层处理
 * 
 * @author MPC
 * @date 2025-04-05
 */
@Service
public class FaultRecordServiceImpl implements IFaultRecordService 
{
    @Autowired
    private FaultRecordMapper faultRecordMapper;

    /**
     * 查询故障记录
     * 
     * @param faultId 故障记录主键
     * @return 故障记录
     */
    @Override
    public FaultRecord selectFaultRecordByFaultId(Long faultId)
    {
        return faultRecordMapper.selectFaultRecordByFaultId(faultId);
    }

    /**
     * 查询故障记录列表
     * 
     * @param faultRecord 故障记录
     * @return 故障记录
     */
    @Override
    public List<FaultRecord> selectFaultRecordList(FaultRecord faultRecord)
    {
        return faultRecordMapper.selectFaultRecordList(faultRecord);
    }

    /**
     * 新增故障记录
     * 
     * @param faultRecord 故障记录
     * @return 结果
     */
    @Override
    public int insertFaultRecord(FaultRecord faultRecord)
    {
        faultRecord.setCreateTime(DateUtils.getNowDate());
        return faultRecordMapper.insertFaultRecord(faultRecord);
    }

    /**
     * 修改故障记录
     * 
     * @param faultRecord 故障记录
     * @return 结果
     */
    @Override
    public int updateFaultRecord(FaultRecord faultRecord)
    {
        faultRecord.setUpdateTime(DateUtils.getNowDate());
        return faultRecordMapper.updateFaultRecord(faultRecord);
    }

    /**
     * 批量删除故障记录
     * 
     * @param faultIds 需要删除的故障记录主键
     * @return 结果
     */
    @Override
    public int deleteFaultRecordByFaultIds(Long[] faultIds)
    {
        return faultRecordMapper.deleteFaultRecordByFaultIds(faultIds);
    }

    /**
     * 删除故障记录信息
     * 
     * @param faultId 故障记录主键
     * @return 结果
     */
    @Override
    public int deleteFaultRecordByFaultId(Long faultId)
    {
        return faultRecordMapper.deleteFaultRecordByFaultId(faultId);
    }

    /**
     * 查询故障记录列表
     *
     * @param faultRecord 故障记录
     * @return 故障记录Vo集合
     */
    public List<FaultRecordVo> selectFaultRecordVoList(FaultRecord faultRecord)
    {
        return faultRecordMapper.selectFaultRecordVoList(faultRecord);
    }
}
